package grafica;

import javax.swing.*;

import nivel.*;

/**
 * La clase GraficaComponentes independiza al fondo y a Mario de los componentes
 * que conforman al nivel. Consta de un JPanel (panelComponentes) al que, con el
 * metodo agregarObstaculo, se le agregan tantos JLabels como obstaculos tenga
 * el nivel
 * 
 * @author Agustin Orge (LU.85538)
 * @author Victoria Martinez de la Cruz (LU.87620)
 */
public class GraficaComponentes {

	/** The panel componentes. */
	private JPanel panelComponentes;

	/**
	 * Constructor de GraficaComponentes.
	 */
	public GraficaComponentes() {
		panelComponentes = new JPanel(null);
		panelComponentes.setOpaque(false);
		panelComponentes.setLayout(null);
		panelComponentes.setSize(3957, 260);
		panelComponentes.setLocation(0, 0);
	}

	/**
	 * Retorna el panel
	 * 
	 * @return panelComponentes
	 */
	public JPanel getPanel() {
		return panelComponentes;
	}

	/**
	 * Agrega un nuevo obstaculo
	 * 
	 * @param ca
	 *            Casillero en el que se agrega el obstaculo
	 */
	public void agregarObstaculo(Casillero ca) {
		JLabel obstaculo = new JLabel(ca.getObstaculo().getIcono().getImagen());
		obstaculo.setSize(16, 16);
		obstaculo.setLocation(ca.getX(), ca.getY());
		panelComponentes.add(obstaculo);
	}

}
